# ifndef __OziMapWizard_H_
# define __OziMapWizard_H_

# include "RgnKind.h"
# include "Datum.h"
# include "PtAlgo.h"
# include "LoadStatus.h"

class COziMapWizard {
  public:
	COziMapWizard () : m_bIsTiled (false), m_cCols (1), m_cRows (1) {}

	LoadStatus_t Show (const char * _strFileName);

	const rect_t & GetRect () const {return m_rect;}
	const string_t & GetMapFileName () const {return m_strMapFileName;}
	const string_t & GetBmpFileName () const {return m_strBmpFileName;}

    bool   IsTiled () const {return m_bIsTiled;}
    size_t GetCols () const {return m_cCols;}
    size_t GetRows () const {return m_cRows;}

  private:
	static INT_PTR CALLBACK _PageProc (HWND _hWnd, UINT _uMsg, WPARAM _wParam, LPARAM _lParam);

	//
	// The data gathered by wizard.
	//

	rect_t m_rect;
	string_t m_strMapFileName;
	string_t m_strBmpFileName;

    bool    m_bIsTiled;
    size_t  m_cCols;
    size_t  m_cRows;

    bool _GetField (HWND _hWnd, UINT _uiId, const char * _strErrorMsg, size_t & _cValue);
};

# endif // __OziMapWizard_H_